package arithmetic;

/**
 * 杨辉三角
 * 
 * 第一行1个元素，第n行n个元素
 * 每一行的第一个元素和最后一个元素都是1
 * 从第三行还是执行下面的公式 生成元素，杨辉三角：yanghui[i][j]=yanghui[i][j-1]+yanghui[i-1][j-1];
 * 
 * @author: yyfei  
 * @email:  yyfei123@qq.com
 */
public class YangHuiSanJiao {
	public static void main(String[] args) {
		//定义行
		int len=20;
		//显示杨辉三角矩阵
		int[][] yh=new int[len][];
		//实现杨辉三角
		for (int i = 0; i < yh.length; i++) {
			
			yh[i]=new int[i+1];
			
			//设置首尾值
			yh[i][0]=1;
			yh[i][i]=1;
			
			if(i>1) {
				for (int j = 1; j < yh[i].length-1; j++) {
					yh[i][j]=yh[i-1][j]+yh[i-1][j-1];
				}	
			}
		}
		
		//打印杨辉三角
		for (int i = 0; i < yh.length; i++) {
			for (int j = 0; j < yh[i].length; j++) {
				System.out.print(yh[i][j] + "  ");
			}
			System.out.println("\n");
		}
		
	}
}
